package cn.yitun.chat.yitunservermanagecore.general.manage.index.service;

import cn.yitun.chat.yituncommonmessage.result.ResultMessage;
import cn.yitun.chat.yitunservercommonlib.basebean.web.JwtUserDto;
import cn.yitun.chat.yitunservercommonlib.dataentity.po.system.user.UserInfo;
import cn.yitun.chat.yitunservercommonlib.dataentity.vo.system.MenuVo;
import cn.yitun.chat.yitunservercommonmessage.data.user.LoginDto;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * date 2018-06-13 10:27:23<br>
 * description
 * 
 * @author yitun<br>
 * @since
 */
public interface IndexService {

	/**
	 * 登录操作
	 * @param loginDto
	 * @return
	 */
	ResultMessage login(HttpServletRequest request, LoginDto loginDto);

	List<MenuVo> menuList(Long userId, String token);

	UserInfo getUser(Long id);

	/**
	 * 添加登陆记录
	 * @param loginDto
	 * @param acceptId
	 * @param status
	 */
	void insertLoginHistory(UserInfo loginDto , Long acceptId , String status);

	/**
	 * 登出
	 */
    void apilogout(JwtUserDto userDto);

	/**
	 * 强制退出
	 * @param userId
	 * @param currentLoginUser
	 */
    void forceLogout(Long userId, JwtUserDto currentLoginUser);

}
